<?php


class edicion_encuestas_controller extends ci_controller{
    
    public function __construct() {
        parent::__construct();
        $this->load->helper("form");
        $this->load->model("encuestas/edicion_encuestas_model","encuestas");
    }
   
          
    public function index($id=0){
       if($id!=0){ 
            $this->session->set_userdata("encuesta",$id);
            if($this->encuestas->countsections($id)==0){
                  $session_data = $this->session->userdata('logged_in');
                  $data['menu'] = menu_ul('empresas',$session_data['tipousuario']);  
                  $data['title']="encuestas";
                  $this->load->view("partials/header.php",$data);
                  //cargamos la vista de edicion
                  $data1["op"]=0;
                  $this->load->view("encuestas/edicion_encuestas_view.php",$data1);
                  //cargamos el modal para crear una seccion 
                  $data=$this->newsectionoption();
                  $this->load->view("partials/modal.php",$data);
                  //cargamos el pie de la aplicacion
                 $this->load->view("partials/footer.php");  
            }else{
             redirect("encuestas/edicion_encuestas_controller/seccion/0");
            }
        }else{
           redirect("login");
        }
    }
   
    public function newsectionoption(){
        //el titulo del encabezado
        $data["head"]="nueva sección";
        // creamos las etiquetas del formulario
        $data1[0]="nombre";
        $data1[1]="encabezado";
       //creamos los objetos del formulario
        $info = array(
            'name' => 'txtnombre',
            'id' => 'txtnombre',
            'required' => '',
            'title' => 'escribir nombre.',
            'value' => '');
        $data2[0]= form_input($info);
        $info1 = array(
            'name' => 'txtencabezado',
            'required' => '',
            'title' => 'escribir encabezado.',
            'id' => 'txtencabezado',
            'value' => '');
        $data2[1]= form_input($info1);
      //creamos  los botones del footer
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"aceptar"); // funcion javascript para ejecutar;
       $data["labels"]=$data1;
       $data["obj"]=$data2;
       $data["op"]="0";
       $data["footer"]=$data3;
        $data["id"]="addseccion";
       $data["url"]="encuestas/edicion_encuestas_controller/saveseccion";
       return $data; 
   }
          
   public function newquestionoptionabierta($total){
        //el titulo del encabezado
       $data["head"]="nueva pregunta";
       $datap["tipos"] =$this->encuestas->gettiposdatos(); 
       $datap["edit"]="";
       $datap["total"]=$total;
       $datap["url"]="encuestas/edicion_encuestas_controller/savequestionabierta";
       $data["body"]=$this->load->view("encuestas/pregunta_abierta",$datap, true);
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addpa";
       return $data; 
   }
   
     public function newquestionoptionsencilla($total){
        //el titulo del encabezado
       $data["head"]="nueva pregunta";
       $datap["edit"]="";
       $datap["total"]=$total;
       $datap["url"]="encuestas/edicion_encuestas_controller/saveopcionsencilla";
       $data["body"]=$this->load->view("encuestas/pregunta_opcionsencilla",$datap, true);
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addos";
       return $data; 
   }
   
   
   public function newquestionoptionmultiple($total){
        //el titulo del encabezado
       $data["head"]="nueva pregunta";
       $datap["edit"]="";
       $datap["total"]=$total;
       $datap["url"]="encuestas/edicion_encuestas_controller/saveopcionmultiple";
       $data["body"]=$this->load->view("encuestas/pregunta_opcionmultiple",$datap, true);
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addom";
       return $data; 
   }
   
   
   public function newquestiontableoptionsencilla($total){
        //el titulo del encabezado
      $data["head"]="nueva pregunta";
      $datap["edit"]="";
      $datap["total"]=$total;
      $datap["url"]="encuestas/edicion_encuestas_controller/saveopcionsencillatable";
      $data["body"]=$this->load->view("encuestas/pregunta_tablaopcionsencilla",$datap, true);
      $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addtos";
       return $data; 
   }
   
   
   public function newquestiontableoptionmultiple($total){
        //el titulo del encabezado
       $data["head"]="nueva pregunta";
       $datap["edit"]="";
       $datap["total"]=$total;
       $datap["url"]="encuestas/edicion_encuestas_controller/saveopcionmultipletable";
       $data["body"]=$this->load->view("encuestas/pregunta_tablaopcionmultiple",$datap, true);
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addtom";
       return $data; 
   }
   
   public function newquestiontableoptionabierta($total){
        //el titulo del encabezado
       $data["head"]="nueva pregunta";
       $datap["tipos"] =$this->encuestas->gettiposdatos();
       $datap["edit"]="";
       $datap["total"]=$total;
       $datap["url"]="encuestas/edicion_encuestas_controller/savetableabierta";
       $data["body"]=$this->load->view("encuestas/pregunta_tablaopcionabierta",$datap, true);
       $info1 = array(
            'data-dismiss' => 'modal',
            'class' => 'btn',           
            'aria-hidden' => 'true');
       $data3[0]= form_button($info1,"cancelar","onclick='cleanvar();'");
       $info1 = array(            
            'class' => 'btn btn-primary',           
            'aria-hidden' => 'true');
       $data3[1]= form_submit($info1,"guardar"); // funcion java scrip para ejecuatar;
       $data["op"]="1";
       $data["footer"]=$data3;
       $data["id"]="addtoa";
       return $data; 
   }
   
    public function saveseccion(){          
       
      if( $this->encuestas->insertsection($this->session->userdata("encuesta"))){        
        redirect("encuestas/edicion_encuestas_controller/seccion/0");
      }
    }
    public function seccion($num=0){
        if($this->session->userdata('logged_in'))
        {
            //si se está editando una encuesta recupera la información y muestra las secciones existentes
            if($this->session->userdata("encuesta")){
                $seccion=$this->encuestas->getlastsection($this->session->userdata("encuesta"),$num);
                $this->session->set_userdata("seccion",$seccion["id"]); 
                $this->session->set_userdata("num",$num); 
                $session_data = $this->session->userdata('logged_in');
                $data['menu'] = menu_ul('empresas',$session_data['tipousuario']);   
                $data['title']="encuestas";
                $this->load->view("partials/header.php",$data);
                $data1["preguntas"]=$this->encuestas->getpreguntas($this->session->userdata("seccion"));
                $total= count($data1["preguntas"]);
                $data1["op"]=1;
                $data1["encabezado"]=$seccion["texto"];
                $data1["seccion"]=$seccion["id"];
                $this->load->library('pagination');
                $config['base_url'] = base_url().'/encuestas/edicion_encuestas_controller/seccion';
                $config['total_rows'] = $this->encuestas->countsections($this->session->userdata("encuesta"));
                $config['per_page'] = '1';
                $config['uri_segment'] = 4; 
                $config['first_link'] = false;
                $config['last_link']= false;
                $config['num_links'] = 1;
                $config['full_tag_open'] = '<ul>';
                $config['full_tag_close'] = '</ul>';      
                $config['next_tag_open'] = '<li>';
                $config['next_tag_close'] = '</li>';
                $config['prev_tag_open'] = '<li>';
                $config['prev_tag_close'] = '</li>';
                $config['num_tag_open'] = '<li onclick="alert("hola");">';
                $config['num_tag_close'] = '</li>';
                $config['cur_tag_open'] = '<li class="disabled"><a class="current">';
                $config['cur_tag_close'] = '</a></li>';
                $this->pagination->initialize($config);        
                $data1["body"]=$this->pagination->create_links();
                $this->load->view("encuestas/edicion_encuestas_view.php",$data1);
                //cargamos modales para crear sección y tipos de pregunta
                $data=$this->newsectionoption();
                $this->load->view("partials/modal.php",$data);
                $data7=$this->newquestionoptionabierta($total);      
                $this->load->view("partials/modal.php",$data7);
                $data8=$this->newquestionoptionsencilla($total);
                $this->load->view("partials/modal.php",$data8);
                $data9=$this->newquestionoptionmultiple($total);
                $this->load->view("partials/modal.php",$data9);
                $data10=$this->newquestiontableoptionsencilla($total);
                $this->load->view("partials/modal.php",$data10);
                $data11=$this->newquestiontableoptionmultiple($total);
                $this->load->view("partials/modal.php",$data11);
                $data12=$this->newquestiontableoptionabierta($total);
                $this->load->view("partials/modal.php",$data12);
                //cargamos el pie de la aplicacion
                $this->load->view("partials/footer.php");  
            } else { //se creará una sección nueva
                redirect('estudios');
            }
        }else{
            redirect('login');
        }   
    }
    
    private function loadpreguntas($num){
        $data=$this->encuestas->getpreguntas($num);
        $preguntashtml=$this->load->view("encuestas/mostrar_preguntas",$data,true);
        $pfinal[0]= $preguntashtml;
        $pfinal[1]= $preguntashtml;
        return $pfinal;
    }
    
    public function savequestionabierta(){        
       if( $this->encuestas->insertpreguntaabierta($this->session->userdata("seccion"),1)){
          redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
      }
    }
    
    public function saveopcionsencilla(){
     if( $this->encuestas->insertpreguntaopciones($this->session->userdata("seccion"),2,$this->input->post("txtopciones"))){
          redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
      }
    }
    
    public function saveopcionmultiple(){
      if( $this->encuestas->insertpreguntaopciones($this->session->userdata("seccion"),3,$this->input->post("txtopcionesm"))){
          redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
      }
    }
    
    public function saveopcionsencillatable(){   
     if( $this->encuestas->insertpreguntatabla($this->session->userdata("seccion"),4,$this->input->post("txttotalc"),$this->input->post("txttotalf"))){
         redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
     }
    }
    
    public function saveopcionmultipletable(){   
     if( $this->encuestas->insertpreguntatabla($this->session->userdata("seccion"),5,$this->input->post("txttotalcm"),$this->input->post("txttotalfm"))){
         redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
     }
    }
    
   public function savetableabierta(){   
     if( $this->encuestas->insertpreguntatabla($this->session->userdata("seccion"),6,$this->input->post("txttotalca"),$this->input->post("txttotalfa"))){
         redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
     }
    } 
     public function eliminarpregunta($id,$tipo,$subseccion){ 
        if($this->encuestas->eliminarpregunta($id,$tipo,$subseccion,$this->session->userdata("seccion"))){
             redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
         }       
    } 
    
    public function editpreguntaabierta($id){         
        if($this->encuestas->editpreguntaabierta($id,$this->session->userdata("seccion"))){
            redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));                 
        }     
    } 
 
 
    public function editpreguntaopcioness($id){        
        if($this->encuestas->editpreguntaopciones($id,$this->input->post("txtopciones"),$this->session->userdata("seccion"),2)){
                redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));                 
        }     
    }
  
 
     public function editpreguntaopcionesm($id){        
        if($this->encuestas->editpreguntaopciones($id,$this->input->post("txtopcionesm"),$this->session->userdata("seccion"),3)){
                redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));                 
        }     
    }
 
 
   public function editopcionsencillatable($id){     
           if( $this->encuestas->editarpreguntatabla($id,$this->session->userdata("seccion"),4,$this->input->post("txttotalc"),$this->input->post("txttotalf"))){
            redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
        }
    }
    
    public function editopcionmultipletable($id){   
     if( $this->encuestas->editarpreguntatabla($id,$this->session->userdata("seccion"),5,$this->input->post("txttotalcm"),$this->input->post("txttotalfm"))){
         redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
     }
    }
    
 
     public function edittableabierta($id){   
     if( $this->encuestas->editarpreguntatabla($id,$this->session->userdata("seccion"),6,$this->input->post("txttotalca"),$this->input->post("txttotalfa"))){
         redirect("encuestas/edicion_encuestas_controller/seccion/".$this->session->userdata("num"));          
     }
    } 
    
 public function eliminarseccion($id){ 
        if($this->encuestas->eliminarseccion($id)){
             redirect("encuestas/edicion_encuestas_controller/");          
         }       
 } 
}
